<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Accelerator Groups</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="gtkbase.html" title="Part II. GTK+ Core Reference">
<link rel="prev" href="gtk-General.html" title="Main loop and Events">
<link rel="next" href="gtk-Accelerator-Maps.html" title="Accelerator Maps">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gtk-General.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gtkbase.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
<td><a accesskey="n" href="gtk-Accelerator-Maps.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#gtk-Keyboard-Accelerators.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#gtk-Keyboard-Accelerators.description" class="shortcut">Description</a>
                   | 
                  <a href="#gtk-Keyboard-Accelerators.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#gtk-Keyboard-Accelerators.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#gtk-Keyboard-Accelerators.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="gtk-Keyboard-Accelerators"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gtk-Keyboard-Accelerators.top_of_page"></a>Accelerator Groups</span></h2>
<p>Accelerator Groups — Groups of global keyboard accelerators for an entire GtkWindow</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="gtk-Keyboard-Accelerators.synopsis"></a><h2>Synopsis</h2>
<a name="GtkAccelGroup"></a><pre class="synopsis">
#include &lt;gtk/gtk.h&gt;

struct              <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup-struct" title="struct GtkAccelGroup">GtkAccelGroup</a>;
<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *     <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-new" title="gtk_accel_group_new ()">gtk_accel_group_new</a>                 (<em class="parameter"><code><span class="type">void</span></code></em>);
#define             <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-ref" title="gtk_accel_group_ref">gtk_accel_group_ref</a>
#define             <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-unref" title="gtk_accel_group_unref">gtk_accel_group_unref</a>
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()">gtk_accel_group_connect</a>             (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkAccelFlags" title="enum GtkAccelFlags"><span class="type">GtkAccelFlags</span></a> accel_flags</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-connect-by-path" title="gtk_accel_group_connect_by_path ()">gtk_accel_group_connect_by_path</a>     (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accel_path</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()">*GtkAccelGroupActivate</a>)            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *acceleratable</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupFindFunc" title="GtkAccelGroupFindFunc ()">*GtkAccelGroupFindFunc</a>)            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="type">GtkAccelKey</span></a> *key</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-disconnect" title="gtk_accel_group_disconnect ()">gtk_accel_group_disconnect</a>          (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-disconnect-key" title="gtk_accel_group_disconnect_key ()">gtk_accel_group_disconnect_key</a>      (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);
<span class="returnvalue">GtkAccelGroupEntry</span> * <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-query" title="gtk_accel_group_query ()">gtk_accel_group_query</a>              (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_entries</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-activate" title="gtk_accel_group_activate ()">gtk_accel_group_activate</a>            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> accel_quark</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *acceleratable</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()">gtk_accel_group_lock</a>                (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()">gtk_accel_group_unlock</a>              (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-get-is-locked" title="gtk_accel_group_get_is_locked ()">gtk_accel_group_get_is_locked</a>       (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);
<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *     <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-from-accel-closure" title="gtk_accel_group_from_accel_closure ()">gtk_accel_group_from_accel_closure</a>  (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);
<a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="returnvalue">GdkModifierType</span></a>     <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-get-modifier-mask" title="gtk_accel_group_get_modifier_mask ()">gtk_accel_group_get_modifier_mask</a>   (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()">gtk_accel_groups_activate</a>           (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-from-object" title="gtk_accel_groups_from_object ()">gtk_accel_groups_from_object</a>        (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="returnvalue">GtkAccelKey</span></a> *       <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-find" title="gtk_accel_group_find ()">gtk_accel_group_find</a>                (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupFindFunc" title="GtkAccelGroupFindFunc ()"><span class="type">GtkAccelGroupFindFunc</span></a> find_func</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
struct              <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey">GtkAccelKey</a>;
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-valid" title="gtk_accelerator_valid ()">gtk_accelerator_valid</a>               (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifiers</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-parse" title="gtk_accelerator_parse ()">gtk_accelerator_parse</a>               (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accelerator</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *accelerator_mods</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-name" title="gtk_accelerator_name ()">gtk_accelerator_name</a>                (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-get-label" title="gtk_accelerator_get_label ()">gtk_accelerator_get_label</a>           (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-set-default-mod-mask" title="gtk_accelerator_set_default_mod_mask ()">gtk_accelerator_set_default_mod_mask</a>
                                                        (<em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> default_mod_mask</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-get-default-mod-mask" title="gtk_accelerator_get_default_mod_mask ()">gtk_accelerator_get_default_mod_mask</a>
                                                        (<em class="parameter"><code><span class="type">void</span></code></em>);
</pre>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----GtkAccelGroup
</pre>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup--is-locked" title='The "is-locked" property'>is-locked</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read
  "<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup--modifier-mask" title='The "modifier-mask" property'>modifier-mask</a>"            <a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a>       : Read
</pre>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup-accel-activate" title='The "accel-activate" signal'>accel-activate</a>"                                 : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS"><code class="literal">Has Details</code></a>
  "<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup-accel-changed" title='The "accel-changed" signal'>accel-changed</a>"                                  : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS"><code class="literal">Has Details</code></a>
</pre>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.description"></a><h2>Description</h2>
<p>
A <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> represents a group of keyboard accelerators,
typically attached to a toplevel <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a> (with
<a class="link" href="GtkWindow.html#gtk-window-add-accel-group" title="gtk_window_add_accel_group ()"><code class="function">gtk_window_add_accel_group()</code></a>). Usually you won't need to create a
<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> directly; instead, when using <a class="link" href="GtkItemFactory.html" title="GtkItemFactory"><span class="type">GtkItemFactory</span></a>, GTK+
automatically sets up the accelerators for your menus in the item
factory's <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.
</p>
<p>
Note that <em class="firstterm">accelerators</em> are different from
<em class="firstterm">mnemonics</em>. Accelerators are shortcuts for
activating a menu item; they appear alongside the menu item they're a
shortcut for. For example "Ctrl+Q" might appear alongside the "Quit"
menu item. Mnemonics are shortcuts for GUI elements such as text
entries or buttons; they appear as underlined characters. See
<a class="link" href="GtkLabel.html#gtk-label-new-with-mnemonic" title="gtk_label_new_with_mnemonic ()"><code class="function">gtk_label_new_with_mnemonic()</code></a>. Menu items can have both accelerators
and mnemonics, of course.
</p>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GtkAccelGroup-struct"></a><h3>struct GtkAccelGroup</h3>
<pre class="programlisting">struct GtkAccelGroup;</pre>
<p>
An object representing and maintaining a group of accelerators.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-new"></a><h3>gtk_accel_group_new ()</h3>
<pre class="programlisting"><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *     gtk_accel_group_new                 (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Creates a new <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> object</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-ref"></a><h3>gtk_accel_group_ref</h3>
<pre class="programlisting">#define gtk_accel_group_ref g_object_ref
</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">gtk_accel_group_ref</code> is deprecated and should not be used in newly-written code.</p>
</div>
<p>
Deprecated equivalent of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the accel group that was passed in</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-unref"></a><h3>gtk_accel_group_unref</h3>
<pre class="programlisting">#define gtk_accel_group_unref g_object_unref
</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">gtk_accel_group_unref</code> is deprecated and should not be used in newly-written code.</p>
</div>
<p>
Deprecated equivalent of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-connect"></a><h3>gtk_accel_group_connect ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accel_group_connect             (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkAccelFlags" title="enum GtkAccelFlags"><span class="type">GtkAccelFlags</span></a> accel_flags</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>
Installs an accelerator in this group. When <em class="parameter"><code>accel_group</code></em> is being activated
in response to a call to <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>, <em class="parameter"><code>closure</code></em> will be
invoked if the <em class="parameter"><code>accel_key</code></em> and <em class="parameter"><code>accel_mods</code></em> from <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>
match those of this connection.
</p>
<p>
The signature used for the <em class="parameter"><code>closure</code></em> is that of <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()"><span class="type">GtkAccelGroupActivate</span></a>.
</p>
<p>
Note that, due to implementation details, a single closure can only be
connected to one accelerator group.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the accelerator group to install an accelerator in</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>key value of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>modifier combination of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_flags</code></em> :</span></p></td>
<td>a flag mask to configure this accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
<td>closure to be executed upon accelerator activation</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-connect-by-path"></a><h3>gtk_accel_group_connect_by_path ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accel_group_connect_by_path     (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accel_path</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>
Installs an accelerator in this group, using an accelerator path to look
up the appropriate key and modifiers (see <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-add-entry" title="gtk_accel_map_add_entry ()"><code class="function">gtk_accel_map_add_entry()</code></a>).
When <em class="parameter"><code>accel_group</code></em> is being activated in response to a call to
<a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>, <em class="parameter"><code>closure</code></em> will be invoked if the <em class="parameter"><code>accel_key</code></em> and
<em class="parameter"><code>accel_mods</code></em> from <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a> match the key and modifiers
for the path.
</p>
<p>
The signature used for the <em class="parameter"><code>closure</code></em> is that of <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()"><span class="type">GtkAccelGroupActivate</span></a>.
</p>
<p>
Note that <em class="parameter"><code>accel_path</code></em> string will be stored in a <a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>. Therefore, if you
pass a static string, you can save some memory by interning it first with 
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#g-intern-static-string"><code class="function">g_intern_static_string()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the accelerator group to install an accelerator in</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td>path used for determining key and modifiers.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
<td>closure to be executed upon accelerator activation</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroupActivate"></a><h3>GtkAccelGroupActivate ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (*GtkAccelGroupActivate)            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *acceleratable</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier</code></em>);</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroupFindFunc"></a><h3>GtkAccelGroupFindFunc ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (*GtkAccelGroupFindFunc)            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="type">GtkAccelKey</span></a> *key</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
<p class="since">Since 2.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-disconnect"></a><h3>gtk_accel_group_disconnect ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accel_group_disconnect          (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>
Removes an accelerator previously installed through
<a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.
</p>
<p>
Since 2.20 <em class="parameter"><code>closure</code></em> can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the accelerator group to remove an accelerator from</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
<td>the closure to remove from this accelerator group, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
to remove all closures. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the closure was found and got disconnected</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-disconnect-key"></a><h3>gtk_accel_group_disconnect_key ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accel_group_disconnect_key      (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>
Removes an accelerator previously installed through
<a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the accelerator group to install an accelerator in</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>key value of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>modifier combination of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there was an accelerator which could be
removed, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-query"></a><h3>gtk_accel_group_query ()</h3>
<pre class="programlisting"><span class="returnvalue">GtkAccelGroupEntry</span> * gtk_accel_group_query              (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_entries</code></em>);</pre>
<p>
Queries an accelerator group for all entries matching <em class="parameter"><code>accel_key</code></em> and 
<em class="parameter"><code>accel_mods</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the accelerator group to query</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>key value of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>modifier combination of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>n_entries</code></em> :</span></p></td>
<td>location to return the number of entries found, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>an array of <em class="parameter"><code>n_entries</code></em> <span class="type">GtkAccelGroupEntry</span> elements, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. The array is owned by GTK+ and must not be freed. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-activate"></a><h3>gtk_accel_group_activate ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accel_group_activate            (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> accel_quark</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *acceleratable</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>
Finds the first accelerator in <em class="parameter"><code>accel_group</code></em> 
that matches <em class="parameter"><code>accel_key</code></em> and <em class="parameter"><code>accel_mods</code></em>, and
activates it.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_quark</code></em> :</span></p></td>
<td>the quark for the accelerator name</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>acceleratable</code></em> :</span></p></td>
<td>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a>, on which
to activate the accelerator.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>accelerator keyval from a key event</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>keyboard state mask from a key event</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an accelerator was activated and handled this keypress</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-lock"></a><h3>gtk_accel_group_lock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accel_group_lock                (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>
Locks the given accelerator group.
</p>
<p>
Locking an acelerator group prevents the accelerators contained
within it to be changed during runtime. Refer to
<a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a> about runtime accelerator changes.
</p>
<p>
If called more than once, <em class="parameter"><code>accel_group</code></em> remains locked until
<a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()"><code class="function">gtk_accel_group_unlock()</code></a> has been called an equivalent number
of times.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-unlock"></a><h3>gtk_accel_group_unlock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accel_group_unlock              (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>
Undoes the last call to <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()"><code class="function">gtk_accel_group_lock()</code></a> on this <em class="parameter"><code>accel_group</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-get-is-locked"></a><h3>gtk_accel_group_get_is_locked ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accel_group_get_is_locked       (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>
Locks are added and removed using <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()"><code class="function">gtk_accel_group_lock()</code></a> and
<a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()"><code class="function">gtk_accel_group_unlock()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there are 1 or more locks on the <em class="parameter"><code>accel_group</code></em>,
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.14</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-from-accel-closure"></a><h3>gtk_accel_group_from_accel_closure ()</h3>
<pre class="programlisting"><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *     gtk_accel_group_from_accel_closure  (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>
Finds the <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> to which <em class="parameter"><code>closure</code></em> is connected; 
see <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
<td>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> to which <em class="parameter"><code>closure</code></em>
is connected, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-get-modifier-mask"></a><h3>gtk_accel_group_get_modifier_mask ()</h3>
<pre class="programlisting"><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="returnvalue">GdkModifierType</span></a>     gtk_accel_group_get_modifier_mask   (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>
Gets a <a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> representing the mask for this
<em class="parameter"><code>accel_group</code></em>. For example, <a href="../gdk/gdk-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a>, <a href="../gdk/gdk-Windows.html#GDK-SHIFT-MASK:CAPS"><span class="type">GDK_SHIFT_MASK</span></a>, etc.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the modifier mask for this accel group.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.14</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-groups-activate"></a><h3>gtk_accel_groups_activate ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accel_groups_activate           (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>
Finds the first accelerator in any <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> attached
to <em class="parameter"><code>object</code></em> that matches <em class="parameter"><code>accel_key</code></em> and <em class="parameter"><code>accel_mods</code></em>, and
activates that accelerator.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
<td>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a>, on which
to activate the accelerator.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>accelerator keyval from a key event</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>keyboard state mask from a key event</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an accelerator was activated and handled this keypress</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-groups-from-object"></a><h3>gtk_accel_groups_from_object ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            gtk_accel_groups_from_object        (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
<p>
Gets a list of all accel groups which are attached to <em class="parameter"><code>object</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
<td>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a list of all accel groups which are attached to <em class="parameter"><code>object</code></em>. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GtkAccelGroup][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-find"></a><h3>gtk_accel_group_find ()</h3>
<pre class="programlisting"><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="returnvalue">GtkAccelKey</span></a> *       gtk_accel_group_find                (<em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroupFindFunc" title="GtkAccelGroupFindFunc ()"><span class="type">GtkAccelGroupFindFunc</span></a> find_func</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
<p>
Finds the first entry in an accelerator group for which 
<em class="parameter"><code>find_func</code></em> returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and returns its <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="type">GtkAccelKey</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>a <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>find_func</code></em> :</span></p></td>
<td>a function to filter the entries of <em class="parameter"><code>accel_group</code></em> with</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
<td>data to pass to <em class="parameter"><code>find_func</code></em>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the key of the first entry passing
<em class="parameter"><code>find_func</code></em>. The key is owned by GTK+ and must not be freed. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelKey"></a><h3>struct GtkAccelKey</h3>
<pre class="programlisting">struct GtkAccelKey {
  guint           accel_key;
  GdkModifierType accel_mods;
  guint           accel_flags : 16;
};
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-valid"></a><h3>gtk_accelerator_valid ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_accelerator_valid               (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifiers</code></em>);</pre>
<p>
Determines whether a given keyval and modifier mask constitute
a valid keyboard accelerator. For example, the <span class="type">GDK_a</span> keyval
plus <a href="../gdk/gdk-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a> is valid - this is a "Ctrl+a" accelerator.
But, you can't, for instance, use the <span class="type">GDK_Control_L</span> keyval
as an accelerator.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>keyval</code></em> :</span></p></td>
<td>a GDK keyval</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>modifiers</code></em> :</span></p></td>
<td>modifier mask</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the accelerator is valid</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-parse"></a><h3>gtk_accelerator_parse ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accelerator_parse               (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accelerator</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *accelerator_mods</code></em>);</pre>
<p>
Parses a string representing an accelerator. The
format looks like "&lt;Control&gt;a" or "&lt;Shift&gt;&lt;Alt&gt;F1" or
"&lt;Release&gt;z" (the last one is for key release).
The parser is fairly liberal and allows lower or upper case,
and also abbreviations such as "&lt;Ctl&gt;" and "&lt;Ctrl&gt;".
Key names are parsed using <a href="../gdk/gdk-Keyboard-Handling.html#gdk-keyval-from-name"><code class="function">gdk_keyval_from_name()</code></a>. For character keys the
name is not the symbol, but the lowercase name, e.g. one would use
"&lt;Ctrl&gt;minus" instead of "&lt;Ctrl&gt;-".
</p>
<p>
If the parse fails, <em class="parameter"><code>accelerator_key</code></em> and <em class="parameter"><code>accelerator_mods</code></em> will
be set to 0 (zero).
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator</code></em> :</span></p></td>
<td>string representing an accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_key</code></em> :</span></p></td>
<td>return location for accelerator keyval. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_mods</code></em> :</span></p></td>
<td>return location for accelerator modifier mask. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-name"></a><h3>gtk_accelerator_name ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             gtk_accelerator_name                (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);</pre>
<p>
Converts an accelerator keyval and modifier mask
into a string parseable by <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-parse" title="gtk_accelerator_parse ()"><code class="function">gtk_accelerator_parse()</code></a>.
For example, if you pass in <span class="type">GDK_q</span> and <a href="../gdk/gdk-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a>,
this function returns "&lt;Control&gt;q". 
</p>
<p>
If you need to display accelerators in the user interface,
see <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-get-label" title="gtk_accelerator_get_label ()"><code class="function">gtk_accelerator_get_label()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_key</code></em> :</span></p></td>
<td>accelerator keyval</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_mods</code></em> :</span></p></td>
<td>accelerator modifier mask</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a newly-allocated accelerator name</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-get-label"></a><h3>gtk_accelerator_get_label ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             gtk_accelerator_get_label           (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);</pre>
<p>
Converts an accelerator keyval and modifier mask into a string 
which can be used to represent the accelerator to the user.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_key</code></em> :</span></p></td>
<td>accelerator keyval</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accelerator_mods</code></em> :</span></p></td>
<td>accelerator modifier mask</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a newly-allocated string representing the accelerator.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-set-default-mod-mask"></a><h3>gtk_accelerator_set_default_mod_mask ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_accelerator_set_default_mod_mask
                                                        (<em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> default_mod_mask</code></em>);</pre>
<p>
Sets the modifiers that will be considered significant for keyboard
accelerators. The default mod mask is <a href="../gdk/gdk-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a> |
<a href="../gdk/gdk-Windows.html#GDK-SHIFT-MASK:CAPS"><span class="type">GDK_SHIFT_MASK</span></a> | <a href="../gdk/gdk-Windows.html#GDK-MOD1-MASK:CAPS"><span class="type">GDK_MOD1_MASK</span></a> | <a href="../gdk/gdk-Windows.html#GDK-SUPER-MASK:CAPS"><span class="type">GDK_SUPER_MASK</span></a> | 
<a href="../gdk/gdk-Windows.html#GDK-HYPER-MASK:CAPS"><span class="type">GDK_HYPER_MASK</span></a> | <a href="../gdk/gdk-Windows.html#GDK-META-MASK:CAPS"><span class="type">GDK_META_MASK</span></a>, that is, Control, Shift, Alt, 
Super, Hyper and Meta. Other modifiers will by default be ignored 
by <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.
You must include at least the three modifiers Control, Shift
and Alt in any value you pass to this function.
</p>
<p>
The default mod mask should be changed on application startup,
before using any accelerator groups.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>default_mod_mask</code></em> :</span></p></td>
<td>accelerator modifier mask</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-get-default-mod-mask"></a><h3>gtk_accelerator_get_default_mod_mask ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               gtk_accelerator_get_default_mod_mask
                                                        (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Gets the value set by <a class="link" href="gtk-Keyboard-Accelerators.html#gtk-accelerator-set-default-mod-mask" title="gtk_accelerator_set_default_mod_mask ()"><code class="function">gtk_accelerator_set_default_mod_mask()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the default accelerator modifier mask</td>
</tr></tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkAccelGroup--is-locked"></a><h3>The <code class="literal">"is-locked"</code> property</h3>
<pre class="programlisting">  "is-locked"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read</pre>
<p>Is the accel group locked.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroup--modifier-mask"></a><h3>The <code class="literal">"modifier-mask"</code> property</h3>
<pre class="programlisting">  "modifier-mask"            <a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a>       : Read</pre>
<p>Modifier Mask.</p>
<p>Default value: GDK_SHIFT_MASK|GDK_CONTROL_MASK|GDK_MOD1_MASK|GDK_SUPER_MASK|GDK_HYPER_MASK|GDK_META_MASK</p>
</div>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkAccelGroup-accel-activate"></a><h3>The <code class="literal">"accel-activate"</code> signal</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            user_function                      (<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>  *accel_group,
                                                        <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>        *acceleratable,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>           keyval,
                                                        <a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)          : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS"><code class="literal">Has Details</code></a></pre>
<p>
The accel-activate signal is an implementation detail of
<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> and not meant to be used by applications.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> which received the signal</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>acceleratable</code></em> :</span></p></td>
<td>the object on which the accelerator was activated</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>keyval</code></em> :</span></p></td>
<td>the accelerator keyval</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>modifier</code></em> :</span></p></td>
<td>the modifier combination of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the accelerator was activated</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroup-accel-changed"></a><h3>The <code class="literal">"accel-changed"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>  *accel_group,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>           keyval,
                                                        <a href="../gdk/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier,
                                                        <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a>       *accel_closure,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)          : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS"><code class="literal">Has Details</code></a></pre>
<p>
The accel-changed signal is emitted when a <span class="type">GtkAccelGroupEntry</span>
is added to or removed from the accel group.
</p>
<p>
Widgets like <a class="link" href="GtkAccelLabel.html" title="GtkAccelLabel"><span class="type">GtkAccelLabel</span></a> which display an associated 
accelerator should connect to this signal, and rebuild 
their visual representation if the <em class="parameter"><code>accel_closure</code></em> is theirs.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_group</code></em> :</span></p></td>
<td>the <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> which received the signal</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>keyval</code></em> :</span></p></td>
<td>the accelerator keyval</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>modifier</code></em> :</span></p></td>
<td>the modifier combination of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_closure</code></em> :</span></p></td>
<td>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> of the accelerator</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="gtk-Keyboard-Accelerators.see-also"></a><h2>See Also</h2>
gtk_window_add_accel_group(), <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a>,
<a class="link" href="GtkItemFactory.html#gtk-item-factory-new" title="gtk_item_factory_new ()"><code class="function">gtk_item_factory_new()</code></a>, <a class="link" href="GtkLabel.html#gtk-label-new-with-mnemonic" title="gtk_label_new_with_mnemonic ()"><code class="function">gtk_label_new_with_mnemonic()</code></a>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>